package org.convallaria.system.biz.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.convallaria.infrastruct.db.mapper.BaseMapperX;
import org.convallaria.system.biz.entity.SysUser;

/**
 * 系统用户 Mapper 接口
 * 
 * 功能特性：
 * - 继承BaseMapperX，支持多表联查
 * - 支持批量操作的高性能实现
 * - 支持忽略逻辑删除的查询方法
 * - 提供统计和聚合查询方法
 * - 支持自定义SQL片段复用
 * 
 * 业务说明：
 * - 用户管理是系统权限控制的基础组件
 * - 支持多租户数据隔离
 * - 支持软删除机制
 * - 支持乐观锁并发控制
 * - 支持用户状态管理
 * - 支持部门关联和岗位关联
 * - 支持登录信息记录和追踪
 * 
 * 用户类型：
 * - 系统用户：内部系统用户，具有完整权限
 * - 外部用户：外部系统用户，权限受限
 * - API用户：API接口用户，用于系统间调用
 * 
 * 用户状态：
 * - 正常状态：用户可以正常登录和使用系统
 * - 停用状态：用户被禁用，无法登录系统
 * 
 * 关联关系：
 * - 与部门表：多对一关系，通过dept_id关联
 * - 与角色表：多对多关系，通过sys_user_role关联表
 * - 与岗位表：多对多关系，通过sys_user_post关联表
 * - 与租户表：多对一关系，通过tenant_id关联
 * 
 * 数据安全：
 * - 密码加密存储，不参与JSON序列化
 * - 支持登录失败次数限制
 * - 支持账户锁定机制
 * - 支持密码过期策略
 * - 支持会话超时管理
 * 
 * @author convallaria
 * @since 1.0.0
 */
@Mapper
public interface SysUserMapper extends BaseMapperX<SysUser> {

}